package com.zlt.appparking.utils;

import com.alibaba.fastjson.JSONException;
import com.baidu.aip.ocr.AipOcr;
import org.json.JSONObject;

import java.util.HashMap;

public class ImgValueUtil {

    //设置APPID/AK/SK   百度申请账号
    private static final String APP_ID = "";
    private static final String API_KEY = "";
    private static final String SECRET_KEY = "";

    /**
     *
     * @param img 图片的字节流
     * @return number 车牌号
     */
    public static String plateLicense(byte[] img)  {
        // 初始化一个AipOcr
        AipOcr client = new AipOcr(APP_ID, API_KEY, SECRET_KEY);
        // 可选：设置网络连接参数
        client.setConnectionTimeoutInMillis(2000);
        client.setSocketTimeoutInMillis(60000);
        // 可选：设置代理服务器地址, http和socket二选一，或者均不设置
        // client.setHttpProxy("proxy_host", proxy_port);  // 设置http代理
        //client.setSocketProxy("proxy_host", proxy_port);  // 设置socket代理
        // 可选：设置log4j日志输出格式，若不设置，则使用默认配置
        // 也可以直接通过jvm启动参数设置此环境变量
//        System.setProperty("aip.log4j.conf", ExportWordUtil.class.getResource("/").getPath() +"/log4j.properties");
        // 传入可选参数调用接口
        HashMap<String, String> options = new HashMap<String, String>();
        options.put("multi_detect", "false");
        // 调用接口
        JSONObject res = client.plateLicense(img, options);
        try {
            System.out.println(res.toString(2));
            if(res.get("words_result") != null) {
                String  number = res.getJSONObject("words_result").getString("number");
                //System.out.println(number);
                return number;
            }else{
                //失败打印错误信息
                System.out.println(res.getString("error_msg"));
            }
        } catch (JSONException e) {
            //异常信息
            System.out.println(e.getMessage());
        }
        return null;
    }
}
